package chapter8;

import java.util.ArrayList;
import java.util.List;

class X {
    @Override
    public boolean equals(Object obj) {
        return true;
    }
}

/**
 * List判断相等的条件是equals方法返回true
 * 下边的集合添加三个元素，然后调用remove进行删除，
 * 由于X重写了equals方法，总是返回true，所以每次调用remove(new X())时
 * 都会删除第一个元素
 */
public class ListTest2 {
    public static void main(String[] args) {
        List list = new ArrayList();
        list.add("Java");
        list.add("python");
        list.add("go");
        System.out.println(list);
        list.remove(new X());
        System.out.println(list);
        list.remove(new X());
        System.out.println(list);
    }
}
